package org.tinygroup.fizzbuzzwhizz;

/**
 * Created by luoguo on 2014/5/6.
 */
public interface NumberReader extends Comparable<NumberReader>{
    /**
     * 返回处理优先级，优先级越高，越先执行
     *
     * @return
     */
    int getPriority();

    /**
     * 返回排它模式
     * 如果返回true，则自己执行过之后就结束
     * 如果返回false，则表示自己执行过之后，同优先级其它处理器还可以接着处理
     *
     * @return
     */
    boolean isExclusive();

    /**
     * 读数字
     *
     * @param number
     * @return 如果有读则返回true, 没有读则返回false
     */
    boolean read(int number);
}
